package oprecocerto.entity;

import oprecocerto.commom.Util;

import com.google.appengine.api.datastore.Entity;
import com.google.appengine.api.datastore.Key;
import com.google.appengine.api.datastore.KeyFactory;

public class MaterialOrcamento {
	//TODO: adicionar key do orcamento
	public static void createOrUpdateMaterialOrcamento(String nome, String quantidade) {
		Entity materialOrcamento = getSingleMaterialOrcamento(nome);
		if (materialOrcamento == null) {
			materialOrcamento = new Entity("materialOrcamento", nome);
			materialOrcamento.setProperty("nome", nome);
			materialOrcamento.setProperty("quantidade", quantidade);
			//TODO: Calcular valor total do MaterialOrcamento

		} else {
			if (nome != null && !"".equals(nome)) {
				materialOrcamento.setProperty("nome", nome);
			}
			if (quantidade != null && !"".equals(quantidade)) {
				materialOrcamento.setProperty("unidade", quantidade);
			}
			//TODO: Calcular valor total do MaterialOrcamento
		}
		Util.persistEntity(materialOrcamento);
	}

	public static Iterable<Entity> getAllMaterialOrcamento() {
		Iterable<Entity> entities = Util.listEntities("materialOrcamento", null, null);
		return entities;
	}

	public static Iterable<Entity> getMaterialOrcamento(String nome) {
		Iterable<Entity> entities = Util
				.listEntities("materialOrcamento", "nome", nome);
		return entities;
	}

	public static Entity getSingleMaterialOrcamento(String nome) {
		Key key = KeyFactory.createKey("materialOrcamento", nome);
		return Util.findEntity(key);
	}
}
